It would, of course, be possible to perform a modulo check on every single different label candidate to determine which of the candidates would survive such a check. The obvious drawback to this approach is that it would require an unreasonable amount of processor time and an unreasonable amount of buffer storage. A requirement for added buffer storage affects the cost of the system. A requirement for added processor time can adversely affect system response time. If a more powerful processor is used to achieve an acceptable level of system response, the cost of the system is increased.
Another known technique is to fully decode every possible label candidate before attempting to select a particular candidate for modulo checking. The label candidate that appears most frequently is then selected for modulo checking.
While this technique is better than the more conservative technique described above, it still has some drawbacks. While this technique may require less time to carry out in practice since the most frequently occurring candidate is probably the correct candidate, a considerable amount of processor time is still required to decode all of the ambiguous characters in all of the potential candidates.